package com.jqsoft.launcher.activity;

import android.app.Activity;

//import com.identity.Files;
//import com.identity.Shell;
//import com.identity.globalEnum;

/**读身份证信息的页面
 * @author gujunqi
 * date：2014-2-20 
 */
public class TestJarActivity extends Activity {
//	/** Called when the activity is first created. */
//	private RelativeLayout xinxi_rl;
//	private LinearLayout cardnum_ll;
//	private String name,sex,minzu,birthday,zhuzhi,cardnum;
//	private TextView tishi_tv,name_tv,sex_tv,minzu_tv,birthday_year_tv,birthday_month_tv,birthday_tv,zhuzhi_tv,cardnum_tv;
//	private ImageView  iv; 
//	private Button btnInit;
//	private Button btnExit; 
//	private Button btnGetData; 
//	private Button btnRegist;  
////	private ListView lvInfoView;
//	private BluetoothAdapter mAdapter;
//	private BluetoothDevice mDevice;
////	private ArrayAdapter<String> mInfoView; 
//	private static final int REQUEST_ENABLE_BT = 2;
//	private Shell shell;
//	private boolean bInitial = false;
//	private boolean bStop = false;
//	private boolean bConnected = false;
//	private Thread getThread;
//	//	身份证的姓名
//	public  String cardName ;
//	//	身份证的号码
//	public  String cardNumber ;
//	@Override 
//	protected void onDestroy() {
//		// TODO Auto-generated method stub
//		super.onDestroy();
//		//0316 Handler.removeCallbacks(mRunnable); 
//		bStop = true;
//		try {
//			Thread.sleep(1000);
//		} catch (InterruptedException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();  
//		}			
//		Log.w("Activity", "========onDestroy");
//		try {
//			if(bConnected)
//			{	
//				Log.w("Activity", "onDestroy bConnected is true");
//			if (shell.EndCommunication()) {
//				shell.Destroy();
//			}
//			}
//		} catch (IOException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		} catch (InterruptedException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		} 
//	}
//
//	@Override
//	public void onCreate(Bundle savedInstanceState) {
//		super.onCreate(savedInstanceState);
//		setContentView(R.layout.main);
////		g
//		Button title_bar_left_button=(Button) findViewById(R.id.title_bar_left_button);
//		title_bar_left_button.setOnClickListener(leftlistener);
//		Button title_bar_title_textview=(Button) findViewById(R.id.title_bar_title_textview);
//		title_bar_title_textview.setText("获取身份证信息");
//		xinxi_rl= (RelativeLayout) findViewById(R.id.xinxi_rl);
//		cardnum_ll= (LinearLayout) findViewById(R.id.cardnum_ll);
//		tishi_tv=(TextView) findViewById(R.id.tishi_tv);
//		name_tv=(TextView) findViewById(R.id.name_tv);
//		sex_tv=(TextView) findViewById(R.id.sex_tv);
//		minzu_tv=(TextView) findViewById(R.id.minzu_tv);
//		birthday_year_tv=(TextView) findViewById(R.id.birthday_year_tv);
//		birthday_month_tv=(TextView) findViewById(R.id.birthday_month_tv);
//		birthday_tv=(TextView) findViewById(R.id.birthday_tv);
//		zhuzhi_tv=(TextView) findViewById(R.id.zhuzhi_tv);
//		cardnum_tv=(TextView) findViewById(R.id.cardnum_tv);
//		
//		iv = (ImageView) findViewById(R.id.ivImageview);        
////		mInfoView = new ArrayAdapter<String>(this, R.layout.tv_infoview);
////		lvInfoView = (ListView) findViewById(R.id.lvInfoview);
////		lvInfoView.setAdapter(mInfoView);
////		lvInfoView.setVisibility(View.VISIBLE);
//		mAdapter = BluetoothAdapter.getDefaultAdapter();
//		btnInit = (Button) findViewById(R.id.btnInit);
//		btnExit = (Button) findViewById(R.id.btnExit);
//		btnInit.setOnClickListener(new ButtonInitOnClick());
//		btnExit.setOnClickListener(new ButtonExitOnClick());
//		Files file = new Files(this.getApplicationContext());
//		if (file.IsExist("IDRegister.lic")) {
//			//0316 btnRegist.setEnabled(false);
//		}  
//		// mInfoView.add("开始"); 
//		//writeLogToSD("testJarActivity onCreatee"); 
//		if (mAdapter == null) {
////			mInfoView.add("mAdapter is null!");
//			tishi_tv.setText("没有蓝牙设备！");
//		}
//		// mInfoView.add("mAdapter is success!");  
//		if (!mAdapter.isEnabled()) {
//			Intent enableBtIntent = new Intent( 
//					BluetoothAdapter.ACTION_REQUEST_ENABLE);
//
//			startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
//		}  
//
//		Set<BluetoothDevice> pairedDevices = mAdapter.getBondedDevices();
//		if (pairedDevices.size() > 0) {
//			for (BluetoothDevice device : pairedDevices) {
//				 	String str;
//				 	str = device.getName().substring(0, 3);
//					Log.w("pairedDevices", "device.getName().substring(0, 3) is:"+str);				
//					if(str.equalsIgnoreCase("SYN")){	
//						Log.w("onCreate", "device.getName() is SYNTHESIS");			
//						mDevice = device;	
//					}else   //是否能进入Else
//					{
//						Log.w("onCreate", "device.getName() is not SYNTHESIS");
//						boolean bAllNum=false;
//						str = device.getName().substring(0, 6);
//						bAllNum = str.matches("[0-9]+");
//						if(bAllNum==true)
//						{			
//							mDevice = device;							
//						}
//					} 
////				mInfoView.add(device.getName() + "====" + device.getAddress());
//			}
//			try {
//				mAdapter.cancelDiscovery();
//				shell = new Shell(this.getApplicationContext(), mDevice);
//			} catch (IOException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//				Log.w("test", "Socket connect error！");
////				mInfoView.add("与机具建立连接失败，请尝试重新启动应用程序!");
//				tishi_tv.setText("与机具建立连接失败，请尝试重新启动应用程序!");
//			}
//			Log.w("test", "Socket connect OK！");
//		}
//		
////这是开始进入不用点击的效果
//		initclickMethod();
//	}
//
//	private class ButtonInitOnClick implements OnClickListener {
//		public void onClick(View v) {
//			initclickMethod();
//		}
//		
//	}
//	private void initclickMethod() {
//		globalEnum ge = globalEnum.NONE;
//		//mInfoView.add("ButtonInitOnClick");	
//			try {
//				if (shell.Register())
//				{ 
//					//0316 btnRegist.setEnabled(false);
////					mInfoView.add("取机具编号成功！");	
//					ge = shell.Init(); 
//					if (ge == globalEnum.INITIAL_SUCCESS) {
//						bInitial = true;  
//						btnInit.setEnabled(false);  
////						mInfoView.add("建立连接成功！");	
//						tishi_tv.setText("建立连接成功,请放身份证！");
//						bConnected = true;					    
//						 getThread=new Thread(new GetDataThread());
//						 getThread.start();
//					} else {
//						shell.EndCommunication();//0316
////						mInfoView.add("建立连接失败,请重新执行应用程序");
//						tishi_tv.setText("建立连接失败,请重新执行应用程序！");
//					}
//				}else 
//				{
////					mInfoView.add("没搜索到蓝牙设备，请重新执行应用程序！");	
//					tishi_tv.setText("没搜索到蓝牙设备，请重新执行应用程序！");
//				}
//			} catch (Exception e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			}
//	}
//	
//	 public boolean OnKeyDown(int keyCode,KeyEvent event){   
//	        if (keyCode==KeyEvent.KEYCODE_BACK ) {
//	        	bStop = true;
//	        	finish();
////				android.os.Process.killProcess(android.os.Process.myPid()); 
////				System.exit(0);
//	        }      
//	        return false;   
//	     }  
//	private class ButtonExitOnClick implements OnClickListener {
//		public void onClick(View v) {
//			// TODO Auto-generated method stub
//			bStop = true;
//			try {
//				Thread.sleep(1000);
//			} catch (InterruptedException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			}
//			
//			try { 
//				if(bConnected)
//				{ 
//					if (shell.EndCommunication()) {
//					}
//				}
//			} catch (IOException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			} catch (InterruptedException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			}
//					finish();	
////			android.os.Process.killProcess(android.os.Process.myPid());  
////			System.exit(0);
//		}
//	}
//
//	//0316
//	private class GetDataThread implements Runnable{
//		private String data ;	
//		private byte[] cardInfo = new byte[256];		
//		private int count = 0 ;
//		private Message msg;//主要改了这个地方，好像启作用了
//		private String wltPath="";
//		private String termBPath="";
//		private boolean bRet = false;
//		public GetDataThread(){
//			}        
//		public void run() {	
//			// TODO Auto-generated method stub    
//			Log.w("Activity", "new sample GetDataThread --");
//			globalEnum ge = globalEnum.GetIndentiyCardData_GetData_Failed;
//			try {
//				//0316n
//				//data = null;//
//				//msg = handler.obtainMessage(87, data);//发送消息
//				//handler.sendMessage(msg);				  
//				Thread.sleep(2000);
//				
//				globalEnum gFindCard = globalEnum.NONE;
//				long start = System.currentTimeMillis();
//				while (!bStop) {//0316 gFindCard != globalEnum.FINDCARD_SUCCESS
//					//Log.w("Activity", "info listening count:"+count);
//					count += 1;  
//				    if(count == 10) 
//					{
//						System.gc(); 
//						System.runFinalization(); 
//						count = 0;
//					}					    
//				    bRet = shell.SearchCard(); 
//					if (bRet) {  					      
//						bRet = shell.SelectCard();
//						if(bRet){  
//							data = null;//
//							msg = handler.obtainMessage(2, data);//发送消息
//							handler.sendMessage(msg);						  
//							//Thread.sleep(100);  
//						
//							ge = shell.ReadCard();
//							if (ge == globalEnum.GetDataSuccess) {
//								data = null;//
//								msg = handler.obtainMessage(3, data);//发送消息
//								handler.sendMessage(msg);
//							
//								cardInfo = shell.GetCardInfoBytes();
////								name,sex,minzu,birthday,zhuzhi,cardnum;
//								name=shell.GetName(cardInfo);
//								sex=shell.GetGender(cardInfo);
//								minzu=shell.GetNational(cardInfo);
//								birthday=shell.GetBirthday(cardInfo);
//								zhuzhi=shell.GetAddress(cardInfo);
//								cardnum=shell.GetIndentityCard(cardInfo);
//								data = String.format(
//									"姓名：%s 性别：%s 民族：%s 出生日期：%s 住址：%s 身份证号：%s 签发机关：%s 有效期：%s-%s",
//									shell.GetName(cardInfo), shell.GetGender(cardInfo), shell.GetNational(cardInfo),
//									shell.GetBirthday(cardInfo), shell.GetAddress(cardInfo),
//									shell.GetIndentityCard(cardInfo), shell.GetIssued(cardInfo),
//									shell.GetStartDate(cardInfo), shell.GetEndDate(cardInfo));
//								cardName=shell.GetName(cardInfo);
//								cardNumber=shell.GetIndentityCard(cardInfo);
//								Intent data1 = new Intent();
//								data1.putExtra("cardName", cardName);
//								data1.putExtra("cardNumber", cardNumber);
//								setResult(2, data1);
//								msg = handler.obtainMessage(0, data);//发送消息
//								handler.sendMessage(msg);
//							 
//								// 没有模块号，所以屏蔽
//								wltPath="/data/data/cn.jqsoft.bphs.mpah/files/";
//								termBPath="/mnt/sdcard/";
//								int nret = shell.GetPic(wltPath,termBPath); 
//								if(nret > 0)
//								{
//									Bitmap bm = BitmapFactory.decodeFile("/data/data/cn.jqsoft.bphs.mpah/files/zp.bmp");
//									msg = handler.obtainMessage(100, bm);//发送消息
//									handler.sendMessage(msg);
//								}else if(nret == -5)
//								{
//									msg = handler.obtainMessage(101, data);//发送消息
//									handler.sendMessage(msg);
//							  	}else if(nret == -1)
//							  	{ 
//							  		msg = handler.obtainMessage(102, data);//发送消息
//							  		handler.sendMessage(msg);								  
//							  	} 
//								//break;//0316  调试用，所以增加
//							}//searchCard error							
//						}//searchCard error						
//					}//searchCard error					
//			        SystemClock.sleep(50);
//				}
//			} catch (IOException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			} catch (InterruptedException e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			} catch (Exception e) {
//				// TODO Auto-generated catch block
//				e.printStackTrace();
//			}
//		}
//	}
//	
//	 public Handler handler = new Handler(){//处理UI绘制
//	  private String data;
//	  private Bitmap bm;
//	  @SuppressWarnings("unchecked")
//	  @Override
//	  public void handleMessage(Message msg) {//M_ERROR  M_VALIDATE_ERROR I_ERROR I_VALIDATE_ERROR
//	   switch (msg.what) {                    //C_ERROR  C_VALIDATE_ERROR D_ERROR D_VALIDATE_ERROR
//	   case 0:
//		    data = (String) msg.obj;
//		    if(data == null){
//		    }else {	
////				mInfoView.clear();
////				mInfoView.add(data);
//		    	xinxi_rl.setVisibility(View.VISIBLE);
//		    	cardnum_ll.setVisibility(View.VISIBLE);
//				name_tv.setText(name);
//				sex_tv.setText(sex);
//				minzu_tv.setText(minzu);
//				birthday_year_tv.setText(birthday.substring(0, 4));
//				birthday_month_tv.setText(birthday.substring(5, 7));
//				birthday_tv.setText(birthday.substring(8, 10));
//				zhuzhi_tv.setText(zhuzhi);
//				cardnum_tv.setText(cardnum);
//		    }
//		    break; 
//	   case 100:
//		   bm = (Bitmap) msg.obj;
//	       iv.setImageBitmap(bm);
//	       
//	       deleteFile("zp.bmp");
//		   break; 
//	   case 101:
//		   tishi_tv.setText("照片解码授权文件不正确！");
////			mInfoView.add("照片解码授权文件不正确");
//		   break; 
//	   case 102:
//		   tishi_tv.setText("照片原始数据不正确！");
////			mInfoView.add("照片原始数据不正确");
//		   break; 
//		case 1:
//			//mInfoView.clear();
//			//mInfoView.add("SearchCard ok");
//			break; 
//		case 2:
//			//mInfoView.clear();
//			//mInfoView.add("SelectCard ok");
//			break; 
//		case 3:
////			mInfoView.clear();
////			mInfoView.add("ReadCard ok");
//			tishi_tv.setText("读卡完毕！");
//			break; 
//		case 4:
////			mInfoView.clear();
////			mInfoView.add("SearchCard error");
//			tishi_tv.setText("读卡失败！");
//			break; 
//		case 5:
////			mInfoView.clear();
////			mInfoView.add("SelectCard error");
//			tishi_tv.setText("读卡失败！");
//			break; 
//		case 6:
////			mInfoView.clear();
////			mInfoView.add("ReadCard error");
//			tishi_tv.setText("读卡失败！");
//			break;
//		case 87:
////			mInfoView.clear();
////			mInfoView.add("读卡初始化中，请稍候...");
//			tishi_tv.setText("读卡初始化中，请稍候...");
//			break;
//		case 88:
////			mInfoView.clear();
////			mInfoView.add("机具信息监听中...");
//			tishi_tv.setText("机具信息监听中...");
//			break;
//		case 99:
////			mInfoView.clear();
//	        iv.setImageBitmap(null);
//			break;
//		   default:
//		    break;
//	   }
//	  }
//	 };
//	//0316
//		protected OnClickListener leftlistener = new OnClickListener() {
//			public void onClick(View v) {
//				TestJarActivity.this.setResult(Constant.GO_BACK);
//				TestJarActivity.this.finish();
//				overridePendingTransition(android.R.anim.slide_in_left,
//						android.R.anim.slide_out_right);
//			}
//		};
//
}